Skip to content

feat(agents): Cap'n Web connection transport on the WebSockets capability - #2156

Open
mattzcarey wants to merge 5 commits into
cloudflare:mainfrom
mattzcarey:feat/capnweb-callable-rpc-poc
Open

feat(agents): Cap'n Web connection transport on the WebSockets capability#2156
mattzcarey wants to merge 5 commits into
cloudflare:mainfrom
mattzcarey:feat/capnweb-callable-rpc-poc

Conversation

@mattzcarey

@mattzcarey mattzcarey commented Aug 24, 2026

Copy link
Copy Markdown
Contributor

What

Purely additive: a second connection transport on the WebSockets capability, alongside the default "partykit" (PartySocket) transport, which stays the default; nothing changes for existing clients.

A client can opt into ?__agents_transport=capnweb: the same Agent-protocol frames travel over a single Cap'n Web RPC session whose root carries exactly one method — the message pipe. The capability's handlers are transport-agnostic: both kinds of connection dispatch the same onConnect/onMessage/onClose/onError, appear in getConnections(), and propagate connection.close(code, reason) to the client. Sessions are replaced on reconnect (_pk) and torn down through the same dispose path.

Because Agent rides the capability, useAgent({ transport: "capnweb" }) works against any Agent with the hook surface unchanged — identity, state sync, call/stub RPC frames, and chat all flow over the pipe, with reconnection/backoff and terminal-close semantics matching the PartySocket path. The pipe client is internal to the hook — no new public client surface.

Trade-off: Cap'n Web transport connections are plain in-memory sockets — non-hibernating; the Durable Object stays pinned while one is open.

Docs

  • docs/agents/client-sdk.md: new Transport section plus the transport option in the hook reference.
  • docs/agents/lifecycle.md: the WebSockets section now describes both wires (it previously stated there was no non-hibernating mode).

Testing

  • Workers e2e (against a real Agent): identity/state/MCP delivery on connect, legacy RPC frames over the pipe, mixed capnweb+hibernating state broadcast, getConnections visibility, close-code propagation + registry cleanup.
  • Browser: useAgent capnweb (identity, state round-trip, call/stub).
  • Full workers (123 files) and react (139 tests) suites pass on current main.

@changeset-bot

changeset-bot Bot commented Aug 24, 2026

Copy link
Copy Markdown

🦋 Changeset detected

Latest commit: 0274b8e

The changes in this PR will be included in the next version bump.

This PR includes changesets to release 3 packages
Name Type
agents Minor
@cloudflare/agent-think Patch
@cloudflare/channels Patch

Not sure what this means? Click here to learn what changesets are.

Click here if you're a maintainer who wants to add another changeset to this PR

@mattzcarey mattzcarey changed the title experiment: route Agent callables through Cap'n Web feat(agents): add lifecycle-owned callable targets Aug 24, 2026
@pkg-pr-new

pkg-pr-new Bot commented Aug 24, 2026

Copy link
Copy Markdown

Open in StackBlitz

agents

npm i https://pkg.pr.new/agents@2156

@cloudflare/ai-chat

npm i https://pkg.pr.new/@cloudflare/ai-chat@2156

@cloudflare/codemode

npm i https://pkg.pr.new/@cloudflare/codemode@2156

hono-agents

npm i https://pkg.pr.new/hono-agents@2156

@cloudflare/shell

npm i https://pkg.pr.new/@cloudflare/shell@2156

@cloudflare/think

npm i https://pkg.pr.new/@cloudflare/think@2156

@cloudflare/voice

npm i https://pkg.pr.new/@cloudflare/voice@2156

@cloudflare/worker-bundler

npm i https://pkg.pr.new/@cloudflare/worker-bundler@2156

commit: 0274b8e

@mattzcarey
mattzcarey marked this pull request as ready for review August 24, 2026 17:45
@mattzcarey
mattzcarey marked this pull request as draft August 25, 2026 11:05
@mattzcarey mattzcarey changed the title feat(agents): add lifecycle-owned callable targets feat(agents): move callable RPC to Cap'n Web Aug 25, 2026
@mattzcarey
mattzcarey force-pushed the feat/capnweb-callable-rpc-poc branch from 8d85c1e to 36b3e2e Compare August 25, 2026 11:35
@mattzcarey
mattzcarey marked this pull request as ready for review August 25, 2026 11:41
devin-ai-integration[bot]

This comment was marked as resolved.

@mattzcarey
mattzcarey force-pushed the feat/capnweb-callable-rpc-poc branch from a190bf2 to c21a0da Compare August 27, 2026 14:55
@mattzcarey mattzcarey changed the title feat(agents): move callable RPC to Cap'n Web feat(agents): experimental Cap'n Web transport for useAgent Aug 27, 2026
devin-ai-integration[bot]

This comment was marked as resolved.

@mattzcarey
mattzcarey force-pushed the feat/capnweb-callable-rpc-poc branch from c21a0da to 460ea53 Compare August 27, 2026 16:31
@mattzcarey mattzcarey changed the title feat(agents): experimental Cap'n Web transport for useAgent feat(agents): Cap'n Web on the WebSockets capability — callables + transport Aug 27, 2026
@mattzcarey
mattzcarey force-pushed the feat/capnweb-callable-rpc-poc branch from 460ea53 to 918a292 Compare August 27, 2026 16:54
@mattzcarey mattzcarey changed the title feat(agents): Cap'n Web on the WebSockets capability — callables + transport feat(agents): Cap'n Web connection transport on the WebSockets capability Aug 27, 2026
@mattzcarey
mattzcarey force-pushed the feat/capnweb-callable-rpc-poc branch 3 times, most recently from 18dd0b4 to 5cc00a4 Compare August 28, 2026 09:10
Lifecycle no longer models WebSockets — many hosts never use sockets,
and connection behavior was never really lifecycle's concern. Hosts
that want connections install the WebSockets capability, which owns
the subsystem end to end:

  new WebSockets({
    handlers: { onConnect, onMessage, onClose },
    callables: new RoomCallables()
  })

The capability claims upgrades, accepts hibernating sockets (the
connection layer moved wholesale from lifecycle/connection.ts —
attachment format unchanged, so live hibernated connections survive
the migration), dispatches handlers inside the host invocation
boundary with the live connection in ambient context, reciprocates
close handshakes, closes owned connections on host destruction, and
answers getConnections()/getConnection(). Without it installed,
upgrades are declined.

Callables: pass an RpcTarget and its prototype methods are the remote
interface, served over a Cap'n Web session (?__agents_rpc=capnweb)
with native ReadableStream streaming, host-boundary dispatch, and
rpc/rpc:error events; agents/websockets/client ships a typed
CallablesClient. On an Agent, override the callables() template
method to supply the target (preferred); @callable()-decorated
methods remain the fallback interface, and the resolved interface is
served on every wire — the legacy JSON RPC protocol dispatches
explicit-target methods too, streaming ReadableStream results as
legacy chunk frames. The decorator machinery moved to
callable-decorator.ts so both consumers share one registry.

Agent migrates onto the capability in this change: it installs a
WebSockets instance whose handlers call through Agent's wrapped
hooks, and its connection reads go through the capability. Agent's
public API and wire protocol are unchanged — the full Agent suite
passes as-is. The think packages ride Agent's public API and need no
changes.

Lifecycle keeps only generic platform pass-throughs —
onWebSocketUpgrade to claim upgrades, onWebSocketMessage/Close/Error
to consume hibernation wakes for capability-owned sockets — and
LifecycleServices gains a narrow sockets surface (accept/get, not the
whole DurableObjectState) plus a connection/request scope on
runInHostContext, which Agent's host invoker threads into its
invocation context. The capability interaction contract — hooks,
services, and composition-root apertures as the only three channels,
with the claim/consume dispatch rules — is documented on
DurableObjectCapability.

PlainLifecycleObject and the examples/next/lifecycle example run on
the capability (handlers + callables), so the pre-existing Lifecycle
WebSocket, host-context, and hibernation suites prove handler parity.
New suites cover the callables endpoint on both wires: receiver
binding, host boundary, rpc events, streaming, merged interface
(explicit target preferred, decorators fallback), decorator-only
agents, and legacy-wire dispatch of target methods.
…lity

A connection can opt into a second wire (?__agents_transport=capnweb):
the same frames travel over a single Cap'n Web RPC session whose root
carries exactly one method — the message pipe. The capability's
handlers are transport-agnostic: both kinds of connection dispatch the
same onConnect/onMessage/onClose, appear in getConnections(), and
propagate connection.close(code, reason) to the client. Sessions are
plain in-memory WebSocketPairs — non-hibernating, replaced on
reconnect by _pk, and torn down through the same dispose path as the
hibernating sockets.

Because Agent rides the capability, useAgent({ transport: "capnweb" })
works against any Agent with the hook surface unchanged: identity,
state sync, call/stub RPC frames, and chat flow over the pipe, with
reconnection/backoff and terminal-close semantics matching the
PartySocket path. The browser pipe client is internal to the hook —
no new public client surface.

Covered by workers e2e (identity/state/MCP delivery, legacy RPC frames
over the pipe, mixed capnweb+hibernating broadcast, getConnections
visibility, close-code propagation and registry cleanup) and browser
hook tests (identity, state round-trip, call/stub).
@mattzcarey
mattzcarey force-pushed the feat/capnweb-callable-rpc-poc branch from 5cc00a4 to 20e1d1d Compare August 28, 2026 09:45
devin-ai-integration[bot]

This comment was marked as resolved.

@devin-ai-integration devin-ai-integration Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Devin Review found 2 new potential issues.

6 flags not posted on this PR by your GitHub settings — view them in Devin Review. (Configure)

Devin Review

Comment on lines +20 to +29
function isLocalHost(host: string): boolean {
if (
host.startsWith("localhost:") ||
host.startsWith("127.0.0.1:") ||
host.startsWith("192.168.") ||
host.startsWith("10.") ||
host.startsWith("[::ffff:7f00:1]:")
) {
return true;
}

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🟡 Local hosts use secure sockets

With host: "localhost" or "127.0.0.1" and no protocol, isLocalHost returns false. The client selects wss://, so ordinary local development servers cannot connect.

Suggested change
function isLocalHost(host: string): boolean {
if (
host.startsWith("localhost:") ||
host.startsWith("127.0.0.1:") ||
host.startsWith("192.168.") ||
host.startsWith("10.") ||
host.startsWith("[::ffff:7f00:1]:")
) {
return true;
}
function isLocalHost(host: string): boolean {
if (
host === "localhost" ||
host.startsWith("localhost:") ||
host === "127.0.0.1" ||
host.startsWith("127.0.0.1:") ||
host.startsWith("192.168.") ||
host.startsWith("10.") ||
host.startsWith("[::ffff:7f00:1]:")
) {
return true;
}
Devin Review

Was this helpful? React with 👍 or 👎 to provide feedback.

Comment on lines +227 to +238
close: (code, reason) => {
closeCode = code ?? 1000;
closeReason = reason ?? "Connection closed";
// Close the raw socket so the client observes the requested
// code/reason; fall back to disposing the RPC session when the
// code is outside the range WebSocket.close accepts.
try {
server.close(closeCode, closeReason);
} catch {
session?.[Symbol.dispose]();
}
void dispose();

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🟡 Invalid closes silently terminate sessions

When connection.close() receives an invalid code or oversized reason, it disposes the session instead of propagating the validation error. The same call on a hibernating connection throws, so handlers behave differently by transport.

Prompt for agents
The Cap'n Web connection close callback catches all errors from server.close(code, reason) and treats them as a reason to dispose the RPC session. WebSocket.close uses throws to report invalid close codes and oversized reasons, and the hibernating Connection exposes that behavior. Preserve the Connection contract by distinguishing disposal failures from caller validation failures, allowing invalid close arguments to propagate without silently replacing them with a generic session shutdown.
Devin Review

Was this helpful? React with 👍 or 👎 to provide feedback.

@agent-think

agent-think Bot commented Sep 9, 2026

Copy link
Copy Markdown
Contributor

🔴 agents import sizes

Measured 268 runtime imports as minified bundles. The primary size is gzip; raw minified size is included for diagnosis. An existing import growing by more than 10% is marked red. This report is informational.

Red Yellow Green Unchanged New Removed
3 80 8 174 3 0

Compared dd8bf906 with 0274b8ec. Open workflow run.

Changed imports (94)
Status Import Base gzip Head gzip Delta
🔴 agents/react#_testUtils 3.8 KiB 14.9 KiB +11.1 KiB (+291.69%)
🔴 agents/react#useAgentToolEvents 5.6 KiB 16.7 KiB +11.1 KiB (+199.56%)
🔴 agents/react#useAgent 10.8 KiB 27.7 KiB +16.9 KiB (+155.48%)
🟡 agents/websockets#WebSockets 17.7 KiB 18.9 KiB +1.1 KiB (+6.41%)
🟡 agents/websockets#callablesRpcUrl 12.5 KiB 12.6 KiB +116 B (+0.91%)
🟡 agents/websockets#isCallablesRpcUpgrade 12.4 KiB 12.6 KiB +112 B (+0.88%)
🟡 agents/websockets#callablesFromDecorated 12.7 KiB 12.8 KiB +111 B (+0.85%)
🟡 agents/websockets#CALLABLES_RPC_VALUE 12.4 KiB 12.5 KiB +108 B (+0.85%)
🟡 agents/websockets#CALLABLES_RPC_QUERY 12.4 KiB 12.5 KiB +105 B (+0.83%)
🟡 agents/browser/ai#createBrowserRuntime 146.0 KiB 147.0 KiB +1.0 KiB (+0.69%)
🟡 agents/browser/ai#createBrowserTools 146.0 KiB 147.0 KiB +1.0 KiB (+0.69%)
🟡 agents/browser/tanstack-ai#createBrowserTools 161.7 KiB 162.7 KiB +1.0 KiB (+0.62%)
🟡 agents#routeAgentRequest 259.2 KiB 260.3 KiB +1.1 KiB (+0.41%)
🟡 agents#buildAgentPath 259.1 KiB 260.2 KiB +1.1 KiB (+0.41%)
🟡 agents/chat-sdk#ChatSdkStateAdapter 261.0 KiB 262.1 KiB +1.1 KiB (+0.41%)
🟡 agents#buildAgentUrl 259.3 KiB 260.3 KiB +1.0 KiB (+0.4%)
🟡 agents/chat-sdk#createChatSdkState 261.0 KiB 262.1 KiB +1.1 KiB (+0.4%)
🟡 agents#unstable_callable 258.7 KiB 259.8 KiB +1.0 KiB (+0.4%)
🟡 agents#isDurableObjectStorageReset 258.6 KiB 259.7 KiB +1.0 KiB (+0.4%)
🟡 agents#routeAgentEmail 258.9 KiB 259.9 KiB +1.0 KiB (+0.4%)
🟡 agents#StreamingResponse 258.6 KiB 259.6 KiB +1.0 KiB (+0.4%)
🟡 agents#Agent 258.6 KiB 259.6 KiB +1.0 KiB (+0.4%)
🟡 agents#__DO_NOT_USE_WILL_BREAK__withInvocationScope 258.6 KiB 259.6 KiB +1.0 KiB (+0.4%)
🟡 agents/chat-sdk#ChatSdkStateAgent 260.4 KiB 261.4 KiB +1.0 KiB (+0.4%)
🟡 agents#getSubAgentByName 258.9 KiB 259.9 KiB +1.0 KiB (+0.4%)
🟡 agents#routeSubAgentRequest 258.8 KiB 259.9 KiB +1.0 KiB (+0.4%)
🟡 agents#SUB_PREFIX 258.6 KiB 259.6 KiB +1.0 KiB (+0.4%)
🟡 agents#getCurrentAgent 258.6 KiB 259.6 KiB +1.0 KiB (+0.4%)
🟡 agents#isPlatformTransientError 258.6 KiB 259.6 KiB +1.0 KiB (+0.4%)
🟡 agents#AGENT_TOOL_MILESTONE_PART 258.6 KiB 259.6 KiB +1.0 KiB (+0.4%)
🟡 agents#MCP_SERVER_ID_MAX_LENGTH 258.6 KiB 259.7 KiB +1.0 KiB (+0.4%)
🟡 agents#isDurableObjectMemoryLimitReset 258.6 KiB 259.6 KiB +1.0 KiB (+0.4%)
🟡 agents#AGENT_TOOL_PROGRESS_PART 258.6 KiB 259.7 KiB +1.0 KiB (+0.4%)
🟡 agents#SqlError 258.6 KiB 259.6 KiB +1.0 KiB (+0.4%)
🟡 agents#callable 258.6 KiB 259.7 KiB +1.0 KiB (+0.4%)
🟡 agents#__DO_NOT_USE_WILL_BREAK__agentContext 258.6 KiB 259.6 KiB +1.0 KiB (+0.39%)
🟡 agents#MessageType 258.8 KiB 259.8 KiB +1.0 KiB (+0.39%)
🟡 agents#parseSubAgentPath 258.6 KiB 259.6 KiB +1.0 KiB (+0.39%)
🟡 agents#DEFAULT_AGENT_STATIC_OPTIONS 258.6 KiB 259.6 KiB +1.0 KiB (+0.39%)
🟡 agents#camelCaseToKebabCase 258.6 KiB 259.6 KiB +1.0 KiB (+0.39%)
🟡 agents#normalizeServerId 258.6 KiB 259.6 KiB +1.0 KiB (+0.39%)
🟡 agents#DurableObjectOAuthClientProvider 258.6 KiB 259.6 KiB +1.0 KiB (+0.39%)
🟡 agents#getAgentByName 258.6 KiB 259.6 KiB +1.0 KiB (+0.39%)
🟡 agents#isDurableObjectCodeUpdateReset 258.6 KiB 259.6 KiB +1.0 KiB (+0.39%)
🟡 agents#createHeaderBasedEmailResolver 258.8 KiB 259.8 KiB +1.0 KiB (+0.39%)
🟡 agents/chat-sdk#defaultThreadShard 258.7 KiB 259.7 KiB +1022 B (+0.39%)
🟡 agents/chat-sdk#defaultKeyShard 258.8 KiB 259.8 KiB +1021 B (+0.39%)
🟡 agents/workflows#WorkflowRejectedError 258.7 KiB 259.7 KiB +1011 B (+0.38%)
🟡 agents/workflows#AgentWorkflow 260.0 KiB 260.9 KiB +997 B (+0.37%)
🟡 agents/mcp#MCP_SERVER_ID_MAX_LENGTH 342.5 KiB 343.6 KiB +1.2 KiB (+0.34%)
🟡 agents/mcp#WorkerTransport 345.8 KiB 347.0 KiB +1.2 KiB (+0.34%)
🟡 agents/mcp#ElicitRequestSchema 342.5 KiB 343.6 KiB +1.2 KiB (+0.34%)
🟡 agents/mcp#StreamableHTTPEdgeClientTransport 342.6 KiB 343.7 KiB +1.1 KiB (+0.33%)
🟡 agents/mcp#DurableObjectEventStore 342.5 KiB 343.6 KiB +1.1 KiB (+0.33%)
🟡 agents/mcp#getMcpAuthContext 342.5 KiB 343.6 KiB +1.1 KiB (+0.33%)
🟡 agents/mcp#McpAgent 342.5 KiB 343.6 KiB +1.1 KiB (+0.33%)
🟡 agents/mcp#RPC_DO_PREFIX 342.5 KiB 343.6 KiB +1.1 KiB (+0.33%)
🟡 agents/mcp#SSEEdgeClientTransport 342.6 KiB 343.7 KiB +1.1 KiB (+0.33%)
🟡 agents/mcp#RPCClientTransport 342.5 KiB 343.6 KiB +1.1 KiB (+0.32%)
🟡 agents/mcp#normalizeServerId 342.5 KiB 343.6 KiB +1.1 KiB (+0.32%)
🟡 agents/mcp#RPCServerTransport 342.5 KiB 343.6 KiB +1.1 KiB (+0.32%)
🟡 agents/mcp#createMcpHandler 388.2 KiB 389.4 KiB +1.2 KiB (+0.3%)
🟡 agents/mcp#createLegacyMcpHandler 375.9 KiB 377.1 KiB +1.1 KiB (+0.29%)
🟡 agents/mcp#experimental_createMcpHandler 376.1 KiB 377.2 KiB +1.1 KiB (+0.29%)
🟡 agents/browser#DurableBrowserSessionStore 36.4 KiB 36.4 KiB +4 B (+0.01%)
🟡 agents/browser#browserExtract 36.3 KiB 36.3 KiB +3 B (+0.01%)
🟡 agents/browser#browserContent 36.3 KiB 36.3 KiB +3 B (+0.01%)
🟡 agents/browser#browserLinks 36.3 KiB 36.3 KiB +3 B (+0.01%)
🟡 agents/browser#DEFAULT_EXEC_SWEEP_IDLE_MS 36.0 KiB 36.0 KiB +2 B (+0.01%)
🟡 agents/browser#DEFAULT_SWEEP_IDLE_MS 36.0 KiB 36.0 KiB +2 B (+0.01%)
🟡 agents/browser#runQuickAction 36.0 KiB 36.0 KiB +2 B (+0.01%)
🟡 agents/browser#BrowserRenderingError 36.0 KiB 36.0 KiB +2 B (+0.01%)
🟡 agents/browser#deleteBrowserSession 36.1 KiB 36.1 KiB +2 B (+0.01%)
🟡 agents/browser#listBrowserTargets 36.1 KiB 36.1 KiB +2 B (+0.01%)
🟡 agents/browser#browserScrape 36.3 KiB 36.3 KiB +2 B (+0.01%)
🟡 agents/browser#browserSnapshot 36.3 KiB 36.3 KiB +2 B (+0.01%)
🟡 agents/browser#browserMarkdown 36.3 KiB 36.3 KiB +2 B (+0.01%)
🟡 agents/browser#createBrowserSession 36.3 KiB 36.3 KiB +2 B (+0.01%)
🟡 agents/browser#connectBrowserSession 37.5 KiB 37.5 KiB +2 B (+0.01%)
🟡 agents/browser#getBrowserRecording 36.2 KiB 36.2 KiB +1 B (+0%)
🟡 agents/browser#loadCdpSpec 36.6 KiB 36.6 KiB +1 B (+0%)
🟡 agents/browser#CdpSession 37.2 KiB 37.2 KiB +1 B (+0%)
🟡 agents/skills#SkillRegistry 416.4 KiB 416.4 KiB +1 B (+0%)
🟢 agents/sessions#createCompactFunction 1.7 KiB 1.7 KiB -2 B (-0.12%)
🟢 agents/browser#CodemodeRuntime 39.6 KiB 39.6 KiB -6 B (-0.01%)
🟢 agents/browser/ai#createQuickActionTools 122.5 KiB 122.5 KiB -11 B (-0.01%)
🟢 agents/browser#connectBrowser 37.8 KiB 37.8 KiB -3 B (-0.01%)
🟢 agents/browser#browserPdf 36.3 KiB 36.3 KiB -1 B (-0%)
🟢 agents/browser#BrowserConnector 50.5 KiB 50.5 KiB -1 B (-0%)
🟢 agents/skills#fromManifest 309.8 KiB 309.8 KiB -5 B (-0%)
🟢 agents/skills#parseSkillMarkdown 328.6 KiB 328.6 KiB -2 B (-0%)
agents/websockets#CAPNWEB_TRANSPORT_QUERY 12.5 KiB
agents/websockets#CAPNWEB_TRANSPORT_VALUE 12.5 KiB
agents/websockets#isCapnWebTransportUpgrade 12.6 KiB
All 268 current runtime imports
Status Import Gzip Raw minified
🟡 agents#__DO_NOT_USE_WILL_BREAK__agentContext 259.6 KiB 1133.4 KiB
🟡 agents#__DO_NOT_USE_WILL_BREAK__withInvocationScope 259.6 KiB 1133.4 KiB
🟡 agents#Agent 259.6 KiB 1133.4 KiB
🟡 agents#AGENT_TOOL_MILESTONE_PART 259.6 KiB 1133.4 KiB
🟡 agents#AGENT_TOOL_PROGRESS_PART 259.7 KiB 1133.4 KiB
🟡 agents#buildAgentPath 260.2 KiB 1135.7 KiB
🟡 agents#buildAgentUrl 260.3 KiB 1136.1 KiB
🟡 agents#callable 259.7 KiB 1133.5 KiB
🟡 agents#camelCaseToKebabCase 259.6 KiB 1133.4 KiB
🟡 agents#createHeaderBasedEmailResolver 259.8 KiB 1133.8 KiB
🟡 agents#DEFAULT_AGENT_STATIC_OPTIONS 259.6 KiB 1133.4 KiB
🟡 agents#DurableObjectOAuthClientProvider 259.6 KiB 1133.4 KiB
🟡 agents#getAgentByName 259.6 KiB 1133.4 KiB
🟡 agents#getCurrentAgent 259.6 KiB 1133.4 KiB
🟡 agents#getSubAgentByName 259.9 KiB 1134.1 KiB
🟡 agents#isDurableObjectCodeUpdateReset 259.6 KiB 1133.4 KiB
🟡 agents#isDurableObjectMemoryLimitReset 259.6 KiB 1133.4 KiB
🟡 agents#isDurableObjectStorageReset 259.7 KiB 1133.5 KiB
🟡 agents#isPlatformTransientError 259.6 KiB 1133.4 KiB
🟡 agents#MCP_SERVER_ID_MAX_LENGTH 259.7 KiB 1133.4 KiB
🟡 agents#MessageType 259.8 KiB 1133.7 KiB
🟡 agents#normalizeServerId 259.6 KiB 1133.4 KiB
🟡 agents#parseSubAgentPath 259.6 KiB 1133.4 KiB
🟡 agents#routeAgentEmail 259.9 KiB 1134.1 KiB
🟡 agents#routeAgentRequest 260.3 KiB 1135.3 KiB
🟡 agents#routeSubAgentRequest 259.9 KiB 1133.9 KiB
🟡 agents#SqlError 259.6 KiB 1133.4 KiB
🟡 agents#StreamingResponse 259.6 KiB 1133.4 KiB
🟡 agents#SUB_PREFIX 259.6 KiB 1133.4 KiB
🟡 agents#unstable_callable 259.8 KiB 1133.6 KiB
agents/agent-tools#agentTool 112.5 KiB 538.2 KiB
🟢 agents/browser#BrowserConnector 50.5 KiB 176.6 KiB
🟡 agents/browser#browserContent 36.3 KiB 127.4 KiB
🟡 agents/browser#browserExtract 36.3 KiB 127.4 KiB
🟡 agents/browser#browserLinks 36.3 KiB 127.4 KiB
🟡 agents/browser#browserMarkdown 36.3 KiB 127.4 KiB
🟢 agents/browser#browserPdf 36.3 KiB 127.3 KiB
🟡 agents/browser#BrowserRenderingError 36.0 KiB 126.7 KiB
🟡 agents/browser#browserScrape 36.3 KiB 127.4 KiB
agents/browser#browserScreenshot 36.3 KiB 127.3 KiB
🟡 agents/browser#browserSnapshot 36.3 KiB 127.4 KiB
🟡 agents/browser#CdpSession 37.2 KiB 129.8 KiB
🟢 agents/browser#CodemodeRuntime 39.6 KiB 139.0 KiB
🟢 agents/browser#connectBrowser 37.8 KiB 131.4 KiB
🟡 agents/browser#connectBrowserSession 37.5 KiB 130.4 KiB
agents/browser#connectUrl 37.6 KiB 130.5 KiB
🟡 agents/browser#createBrowserSession 36.3 KiB 127.5 KiB
🟡 agents/browser#DEFAULT_EXEC_SWEEP_IDLE_MS 36.0 KiB 126.6 KiB
🟡 agents/browser#DEFAULT_SWEEP_IDLE_MS 36.0 KiB 126.6 KiB
🟡 agents/browser#deleteBrowserSession 36.1 KiB 126.9 KiB
🟡 agents/browser#DurableBrowserSessionStore 36.4 KiB 127.6 KiB
🟡 agents/browser#getBrowserRecording 36.2 KiB 127.1 KiB
🟡 agents/browser#listBrowserTargets 36.1 KiB 126.9 KiB
🟡 agents/browser#loadCdpSpec 36.6 KiB 128.3 KiB
🟡 agents/browser#runQuickAction 36.0 KiB 126.6 KiB
🟡 agents/browser/ai#createBrowserRuntime 147.0 KiB 632.8 KiB
🟡 agents/browser/ai#createBrowserTools 147.0 KiB 632.9 KiB
🟢 agents/browser/ai#createQuickActionTools 122.5 KiB 554.3 KiB
🟡 agents/browser/tanstack-ai#createBrowserTools 162.7 KiB 701.7 KiB
agents/chat#AbortRegistry 2.5 KiB 8.9 KiB
agents/chat#AGENT_TOOL_STREAM_PROGRESS_BUMP_THROTTLE_MS 2.3 KiB 8.2 KiB
agents/chat#AgentToolProgressEmitter 2.7 KiB 9.5 KiB
agents/chat#AgentToolStreamProgressThrottle 2.4 KiB 8.3 KiB
agents/chat#aiSdkRecoveryCodec 2.3 KiB 8.2 KiB
agents/chat#applyAgentToolEvent 3.2 KiB 11.0 KiB
agents/chat#applyChunkToParts 2.3 KiB 8.2 KiB
agents/chat#applyToolUpdate 2.4 KiB 8.4 KiB
agents/chat#AutoContinuationController 2.3 KiB 8.2 KiB
agents/chat#awaitWithDeadline 2.4 KiB 8.4 KiB
agents/chat#broadcastTransition 3.2 KiB 11.4 KiB
agents/chat#buildChatRecoveringFrame 2.4 KiB 8.4 KiB
agents/chat#buildInClauseStrings 2.4 KiB 8.4 KiB
agents/chat#bumpChatRecoveryProgress 2.4 KiB 8.3 KiB
agents/chat#byteLength 2.5 KiB 8.4 KiB
agents/chat#CHAT_LAST_TERMINAL_KEY 2.3 KiB 8.2 KiB
agents/chat#CHAT_MESSAGE_TYPES 2.3 KiB 8.2 KiB
agents/chat#CHAT_RECOVERING_FLAG_TTL_MS 2.3 KiB 8.2 KiB
agents/chat#CHAT_RECOVERING_KEY 2.3 KiB 8.2 KiB
agents/chat#CHAT_RECOVERY_ALARM_DEBOUNCE_MS 2.3 KiB 8.2 KiB
agents/chat#CHAT_RECOVERY_INCIDENT_KEY_PREFIX 2.3 KiB 8.2 KiB
agents/chat#CHAT_RECOVERY_INCIDENT_TTL_MS 2.3 KiB 8.2 KiB
agents/chat#CHAT_RECOVERY_PROGRESS_KEY 2.3 KiB 8.2 KiB
agents/chat#CHAT_RECOVERY_STABLE_RETRY_DELAY_SECONDS 2.3 KiB 8.2 KiB
agents/chat#CHAT_RECOVERY_TASK_NAME 2.3 KiB 8.2 KiB
agents/chat#CHAT_STREAM_PROGRESS_CREDIT_THROTTLE_MS 2.3 KiB 8.2 KiB
agents/chat#ChatRecoveryEngine 4.4 KiB 15.3 KiB
agents/chat#chatRecoveryTaskRunOptions 2.4 KiB 8.6 KiB
agents/chat#ChatStreamStalledError 2.4 KiB 8.3 KiB
agents/chat#classifyAgentToolChildRecovery 2.4 KiB 8.5 KiB
agents/chat#clearChatTerminal 2.3 KiB 8.3 KiB
agents/chat#clientResolvableToolNames 2.3 KiB 8.3 KiB
agents/chat#ContinuationState 2.7 KiB 9.8 KiB
agents/chat#createAgentToolEventState 2.3 KiB 8.3 KiB
agents/chat#createChatFiberSnapshot 2.5 KiB 8.6 KiB
agents/chat#createChatRecoveryTaskDefinition 2.6 KiB 9.0 KiB
agents/chat#createChatStreams 6.4 KiB 22.0 KiB
agents/chat#createChatTurnTaskDefinition 2.7 KiB 8.9 KiB
agents/chat#createToolsFromClientSchemas 114.3 KiB 545.4 KiB
agents/chat#crossMessageToolResultUpdate 2.4 KiB 8.6 KiB
agents/chat#DEFAULT_CHAT_RECOVERY_MAX_ATTEMPTS 2.3 KiB 8.2 KiB
agents/chat#DEFAULT_CHAT_RECOVERY_MAX_OOM_RETRIES 2.3 KiB 8.2 KiB
agents/chat#DEFAULT_CHAT_RECOVERY_MAX_WORK 2.3 KiB 8.2 KiB
agents/chat#DEFAULT_CHAT_RECOVERY_NO_PROGRESS_TIMEOUT_MS 2.3 KiB 8.2 KiB
agents/chat#DEFAULT_CHAT_RECOVERY_STABLE_TIMEOUT_MS 2.3 KiB 8.2 KiB
agents/chat#DEFAULT_CHAT_RECOVERY_TERMINAL_MESSAGE 2.4 KiB 8.3 KiB
agents/chat#dispatchChatRecoveryToHandoff 3.0 KiB 9.9 KiB
agents/chat#drainInteractionApplies 2.3 KiB 8.3 KiB
agents/chat#enforceRowSizeLimit 3.5 KiB 11.2 KiB
agents/chat#hasIncompleteToolBatch 2.4 KiB 8.6 KiB
agents/chat#interceptAgentToolBroadcast 2.5 KiB 8.7 KiB
agents/chat#isPlatformFailure 2.6 KiB 8.9 KiB
agents/chat#isReplayChunk 2.4 KiB 8.7 KiB
agents/chat#iterateWithStallWatchdog 2.6 KiB 8.8 KiB
agents/chat#KV_DELETE_MAX_KEYS 2.3 KiB 8.2 KiB
agents/chat#listActiveChatRecoveryIncidents 2.4 KiB 8.4 KiB
agents/chat#MAX_BOUND_PARAMS 2.3 KiB 8.2 KiB
agents/chat#MessageType 2.4 KiB 9.0 KiB
agents/chat#normalizeToolInput 2.3 KiB 8.2 KiB
agents/chat#parseProtocolMessage 2.5 KiB 9.0 KiB
agents/chat#partAwaitsClientInteraction 2.4 KiB 8.6 KiB
agents/chat#pausedExecutionUpdate 2.4 KiB 8.4 KiB
agents/chat#pendingChatTerminal 2.3 KiB 8.3 KiB
agents/chat#persistReconstructedOrphan 3.1 KiB 11.0 KiB
agents/chat#PreStreamTurns 2.6 KiB 9.3 KiB
agents/chat#readChatRecoveryProgress 2.3 KiB 8.3 KiB
agents/chat#reconcileMessages 2.8 KiB 9.6 KiB
agents/chat#reconcileOrphanPartial 2.4 KiB 8.5 KiB
agents/chat#recordChatTerminal 2.4 KiB 8.3 KiB
agents/chat#repairInterruptedToolParts 2.6 KiB 9.1 KiB
agents/chat#resolveChatRecoveryConfig 2.6 KiB 8.9 KiB
agents/chat#resolveToolMergeId 2.4 KiB 8.5 KiB
agents/chat#ResumableStream 5.1 KiB 16.8 KiB
agents/chat#ResumeHandshake 3.0 KiB 10.4 KiB
agents/chat#ROW_MAX_BYTES 2.3 KiB 8.2 KiB
agents/chat#runChatRecoveryExhaustion 2.6 KiB 8.9 KiB
agents/chat#sanitizeMessage 2.5 KiB 8.8 KiB
agents/chat#sendIfOpen 2.4 KiB 8.4 KiB
agents/chat#setChatRecovering 2.5 KiB 8.5 KiB
agents/chat#shouldCreditStreamProgress 2.4 KiB 8.3 KiB
agents/chat#STREAM_RESUME_NONE_REASONS 2.3 KiB 8.2 KiB
agents/chat#StreamAccumulator 2.9 KiB 10.7 KiB
agents/chat#StreamProgressCreditThrottle 2.4 KiB 8.3 KiB
agents/chat#SubmitConcurrencyController 2.9 KiB 10.3 KiB
agents/chat#sweepStaleChatRecoveryIncidents 2.4 KiB 8.5 KiB
agents/chat#TextSegmentJoiner 2.7 KiB 9.2 KiB
agents/chat#TIMED_OUT 2.3 KiB 8.2 KiB
agents/chat#toolApprovalUpdate 2.4 KiB 8.5 KiB
agents/chat#toolPartHasSettledResult 2.3 KiB 8.4 KiB
agents/chat#toolResultUpdate 2.4 KiB 8.5 KiB
agents/chat#truncateOlderMessages 3.2 KiB 10.4 KiB
agents/chat#TurnQueue 2.6 KiB 9.2 KiB
agents/chat#unwrapChatFiberSnapshot 2.4 KiB 8.5 KiB
agents/chat#wrapChatFiberSnapshot 2.3 KiB 8.2 KiB
🟡 agents/chat-sdk#ChatSdkStateAdapter 262.1 KiB 1145.0 KiB
🟡 agents/chat-sdk#ChatSdkStateAgent 261.4 KiB 1142.5 KiB
🟡 agents/chat-sdk#createChatSdkState 262.1 KiB 1145.0 KiB
🟡 agents/chat-sdk#defaultKeyShard 259.8 KiB 1133.6 KiB
🟡 agents/chat-sdk#defaultThreadShard 259.7 KiB 1133.5 KiB
agents/chat/react#detectToolsRequiringConfirmation 3.3 KiB 8.3 KiB
agents/chat/react#extractClientToolSchemas 3.2 KiB 8.3 KiB
agents/chat/react#getAgentMessages 3.4 KiB 8.6 KiB
agents/chat/react#getToolApproval 3.1 KiB 8.0 KiB
agents/chat/react#getToolCallId 3.1 KiB 8.0 KiB
agents/chat/react#getToolInput 3.1 KiB 8.0 KiB
agents/chat/react#getToolOutput 3.1 KiB 8.0 KiB
agents/chat/react#getToolPartState 3.2 KiB 8.2 KiB
agents/chat/react#useAgentChat 132.9 KiB 609.7 KiB
agents/chat/react#WebSocketChatTransport 5.7 KiB 17.1 KiB
agents/chat/transport#WebSocketChatTransport 2.8 KiB 9.2 KiB
agents/client#AgentClient 5.7 KiB 16.6 KiB
agents/client#AgentConnectionError 582 B 993 B
agents/client#agentFetch 4.2 KiB 12.3 KiB
agents/client#createStubProxy 638 B 1.0 KiB
agents/client#DEFAULT_CALL_TIMEOUT_MS 473 B 770 B
agents/client#isTerminalCloseEvent 509 B 822 B
agents/context#AgentContextProvider 412 B 792 B
agents/context#AgentSearchProvider 640 B 1.3 KiB
agents/context#ContextBlocks 87.4 KiB 429.7 KiB
agents/email#createAddressBasedEmailResolver 193 B 227 B
agents/email#createCatchAllEmailResolver 110 B 97 B
agents/email#createHeaderBasedEmailResolver 334 B 492 B
agents/email#createSecureReplyEmailResolver 718 B 1.3 KiB
agents/email#DEFAULT_MAX_AGE_SECONDS 56 B 39 B
agents/email#isAutoReplyEmail 201 B 249 B
agents/email#signAgentHeaders 424 B 812 B
agents/experimental/webmcp#registerWebMcp 85.2 KiB 295.8 KiB
agents/lifecycle#getCurrentAgent 376 B 798 B
agents/lifecycle#Lifecycle 8.3 KiB 25.8 KiB
agents/lifecycle#LifecycleCapability 484 B 975 B
🟡 agents/mcp#createLegacyMcpHandler 377.1 KiB 1575.6 KiB
🟡 agents/mcp#createMcpHandler 389.4 KiB 1620.8 KiB
🟡 agents/mcp#DurableObjectEventStore 343.6 KiB 1434.1 KiB
🟡 agents/mcp#ElicitRequestSchema 343.6 KiB 1434.1 KiB
🟡 agents/mcp#experimental_createMcpHandler 377.2 KiB 1575.9 KiB
🟡 agents/mcp#getMcpAuthContext 343.6 KiB 1434.2 KiB
🟡 agents/mcp#MCP_SERVER_ID_MAX_LENGTH 343.6 KiB 1434.2 KiB
🟡 agents/mcp#McpAgent 343.6 KiB 1434.1 KiB
🟡 agents/mcp#normalizeServerId 343.6 KiB 1434.1 KiB
🟡 agents/mcp#RPC_DO_PREFIX 343.6 KiB 1434.1 KiB
🟡 agents/mcp#RPCClientTransport 343.6 KiB 1434.1 KiB
🟡 agents/mcp#RPCServerTransport 343.6 KiB 1434.1 KiB
🟡 agents/mcp#SSEEdgeClientTransport 343.7 KiB 1434.4 KiB
🟡 agents/mcp#StreamableHTTPEdgeClientTransport 343.7 KiB 1434.4 KiB
🟡 agents/mcp#WorkerTransport 347.0 KiB 1451.0 KiB
agents/mcp/client#getNamespacedData 62.9 KiB 240.0 KiB
agents/mcp/client#MCP_SERVER_ID_MAX_LENGTH 62.9 KiB 239.9 KiB
agents/mcp/client#MCPClientManager 158.6 KiB 702.6 KiB
agents/mcp/client#normalizeServerId 63.0 KiB 240.2 KiB
agents/mcp/do-oauth-client-provider#DurableObjectOAuthClientProvider 2.1 KiB 6.6 KiB
agents/mcp/server#createMcpHandler 80.5 KiB 307.2 KiB
agents/mcp/server#getMcpAuthContext 64.0 KiB 245.5 KiB
agents/observability#channels 259 B 549 B
agents/observability#genericObservability 470 B 1.2 KiB
agents/observability#subscribe 324 B 668 B
agents/observability/ai#wrapAISDK 8.8 KiB 30.5 KiB
🔴 agents/react#_testUtils 14.9 KiB 50.0 KiB
🔴 agents/react#useAgent 27.7 KiB 92.6 KiB
🔴 agents/react#useAgentToolEvents 16.7 KiB 57.3 KiB
agents/routing#getAgentByName 795 B 1.7 KiB
agents/routing#routeAgentRequest 1.6 KiB 3.6 KiB
agents/routing#RoutedAgents 2.4 KiB 6.2 KiB
agents/schedule#getSchedulePrompt 85.8 KiB 424.7 KiB
agents/schedule#scheduleSchema 85.3 KiB 423.6 KiB
agents/schedule#unstable_getSchedulePrompt 85.9 KiB 424.9 KiB
agents/schedule#unstable_scheduleSchema 85.3 KiB 423.6 KiB
agents/schedules#Scheduler 6.8 KiB 22.0 KiB
agents/schedules/parser#getSchedulePrompt 85.8 KiB 424.7 KiB
agents/schedules/parser#scheduleSchema 85.3 KiB 423.6 KiB
🟢 agents/sessions#createCompactFunction 1.7 KiB 4.0 KiB
agents/sessions#Session 2.0 KiB 6.0 KiB
agents/sessions#Sessions 9.0 KiB 31.8 KiB
🟢 agents/skills#fromManifest 309.8 KiB 1084.0 KiB
agents/skills#parseSkillFrontmatter 328.4 KiB 1146.2 KiB
🟢 agents/skills#parseSkillMarkdown 328.6 KiB 1146.5 KiB
agents/skills#r2 330.2 KiB 1150.4 KiB
agents/skills#runner 369.0 KiB 1297.8 KiB
🟡 agents/skills#SkillRegistry 416.4 KiB 1581.7 KiB
agents/skills/compile#compileSkillScript 15.4 KiB 43.4 KiB
agents/skills/compile#isCompilableSkillScript 15.4 KiB 43.3 KiB
agents/streams#DEFAULT_MAX_CHUNK_BYTES 94 B 96 B
agents/streams#sseResponse 857 B 1.6 KiB
agents/streams#StreamClosedError 175 B 212 B
agents/streams#StreamNotFoundError 215 B 276 B
agents/streams#Streams 4.2 KiB 13.8 KiB
agents/streams#StreamSerializationError 171 B 201 B
agents/tasks#DuplicateTaskStepError 328 B 463 B
agents/tasks#MAX_SERIALIZED_BYTES 190 B 232 B
agents/tasks#MissingTaskDefinitionError 358 B 536 B
agents/tasks#NonRetryableError 238 B 308 B
agents/tasks#TaskReplayDivergedError 341 B 483 B
agents/tasks#Tasks 8.9 KiB 31.8 KiB
agents/tasks#TaskSerializationError 258 B 339 B
agents/types#MessageType 211 B 365 B
agents/vite#default 353.8 KiB 1356.1 KiB
🟡 agents/websockets#CALLABLES_RPC_QUERY 12.5 KiB 43.6 KiB
🟡 agents/websockets#CALLABLES_RPC_VALUE 12.5 KiB 43.6 KiB
🟡 agents/websockets#callablesFromDecorated 12.8 KiB 44.6 KiB
🟡 agents/websockets#callablesRpcUrl 12.6 KiB 43.8 KiB
agents/websockets#CAPNWEB_TRANSPORT_QUERY 12.5 KiB 43.6 KiB
agents/websockets#CAPNWEB_TRANSPORT_VALUE 12.5 KiB 43.6 KiB
🟡 agents/websockets#isCallablesRpcUpgrade 12.6 KiB 43.7 KiB
agents/websockets#isCapnWebTransportUpgrade 12.6 KiB 43.7 KiB
🟡 agents/websockets#WebSockets 18.9 KiB 65.6 KiB
🟡 agents/workflows#AgentWorkflow 260.9 KiB 1138.2 KiB
🟡 agents/workflows#WorkflowRejectedError 259.7 KiB 1133.6 KiB
agents/x402#normalizeNetwork 14.7 KiB 61.1 KiB
agents/x402#withX402 23.0 KiB 89.2 KiB
agents/x402#withX402Client 104.1 KiB 346.5 KiB

Reported by agent-think[bot].

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant